
clear all
use BSAS.dta

*These are the main packages used

*ssc install nsplit
*ssc install coefplot
*ssc install estout
*ssc install tabout
*ssc install ebal
*ssc install grystyle
*ssc install cem

*This is the scheme for our graphs

set scheme s1mono, permanently 
 
********* PART 1: DATA PREPARATION ********* 


*This first part simply labels and recode data from the initial dataset.


*Treatment variable

*we first need to generate interview dates
destring (intdate), gen(date)
nsplit date, digits(2 2 4) generate(days months years)
gen edate = mdy(months, days, years)
format edate %d
 
 
*here we generate the treatment variable
gen terror=0
replace terror=1 if edate>d(7jul2005)
drop if edate==d(7jul2005)
gen terrorday=edate-16594-30
la var terror "Treatment"

*Control variables

*these are ses variables as they appear, which we just clean since missing data are coded to numbers in BSAS

rename  hhincome y
replace y=. if y==97
replace y=. if y==98
la var y "Income"

rename hedqual edu
replace edu=. if edu==-2
replace edu=. if edu==8
la var edu "Education"

la var rsex "Female"

rename rage age
replace age=. if age==-2
gen squaredage=age*age
la var age "Age"
la var squaredage "Age squared"

gen labour=0
replace labour=1   if vote==2
la var labour "Labour voter"

rename raceori2 race
gen minority=1
replace minority=0 if race==9
replace minority=0 if race==10
la var minority "Ethnic minority"

gen london=0
replace london=1 if region==6
la var london "Live in London"

*Output variables

*these are outpout variables as they appear, which we just clean since missing data are coded to numbers in BSAS. We also recode them between 0-1 to make magnitude comparison easier

replace terrconc=. if tradeof8==-2
replace terrorlk=. if tradeof8==-2
replace terhumri=. if tradeof8==-2
rename tradeof1 banprotest
rename tradeof2 banspeech
rename tradeof3 ID
rename tradeof4 detention
rename tradeof5 nojury
rename tradeof6 email
rename tradeof7 tag
rename tradeof8 torture
 
replace banprotest=. if banprotest==-2
la var banprotest "Ban protest"
replace banspeech=. if banspeech==-2
la var banspeech "Ban speech"
replace ID=. if ID==-2
la var ID "Compulsory ID"
replace detention=. if detention==-2
la var detention "Arbitrary detention"
replace nojury=. if nojury==-2
la var nojury "Deny trial"
replace email=. if email==-2
la var email "Control email"
replace tag=. if tag==-2
la var tag "Tag suspects"
replace torture=. if torture==-2
la var torture "Torture suspects"
replace banprotest=. if banprotest==8
replace banspeech=. if banspeech==8
replace ID=. if ID==8
replace detention=. if detention==8
replace nojury=. if nojury==8
replace nojury=. if nojury==9
replace email=. if email==8
replace email=. if email==9
replace tag=. if tag==8
replace torture=. if torture==8

replace terrorlk=. if terrorlk==-2
replace terrorlk=. if terrorlk>6
replace terrconc=. if terrconc==-2
replace terrconc=. if terrconc>6
replace riskter=. if riskter==-2
replace riskter=. if riskter>6
gen threat=(5-terrorlk)/4
la var threat "Likelihood of threat"
gen concern=(5-terrconc)/4
la var concern "Salience of threat"
gen panic=(5-riskter)/4
la var panic "Exaggeration of threat"
replace humrijob=. if humrijob==-2
replace humrijob=. if humrijob>6
replace tortwar=. if tortwar==-2
replace tortwar=. if tortwar>6

replace britnon=. if britnon==-2
replace britnon=. if britnon>6
replace britnons=. if britnons==-2
replace britnons=. if britnons>6
gen english=2-nateng
replace english=. if nateng>3
la var english "Feel English"

gen british=2-natbrit
replace british=. if natbrit>3
la var british "Feel British"

 
gen human=(5-humrijob)/4
la var human "Human rights"
gen tture=(5-tortwar)/4
la var tture "Torture"

gen ingroup=britnon-1
la var ingroup "Ingroup bias"
replace soctrust=. if soctrust==-2
replace soctrust=. if soctrust>6

replace govtrust=. if govtrust==-2
replace govtrust=. if govtrust>6
 
 gen generalized=2-soctrust
 la var generalized "Generalized trust"
 
 gen political=(4-govtrust)/4
 la var political "Political trust"
 
 
replace taxspend=. if taxspend==-1
replace taxspend=. if taxspend==-2
replace taxspend=. if taxspend>6

replace redistrb=. if redistrb==-1
replace redistrb=. if redistrb==-2
replace redistrb=. if redistrb>6

replace morewelf=. if morewelf==-1
replace morewelf=. if morewelf==-2
replace morewelf=. if morewelf>6
 
 replace welffeet=. if welffeet==-1
replace welffeet=. if welffeet==-2
replace welffeet=. if welffeet>6

 la var taxspend "Fiscal policy"
 la var redistrb "Redistribution"

*Here we create the main dependent variable, and scale it to 0-1 for easier interpretation, using item response function
 
irt gpcm  banprotest banspeech ID email, listwise vce(robust)  
predict pp if e(sample), latent se(ppSE)
g privacy=pp

irt   gpcm  tag detention torture nojury,listwise vce(robust)    
predict pp2 if e(sample), latent se(pp2SE)
g  procedural=pp2

replace privacy= (privacy+ 1.965288)/(1.510471 +1.965288)
replace procedural= (procedural+ 2.082945)/(2.082945 + 1.56201)
 



********* PART 2: REPLICATION OF FIGURES AND TABLES IN PAPER *********   



**** FIGURE 1 (histogram)
 
format edate %d
hist  edate, frequency addplot(pci 0 16625 400 16625, lcolor(red) lwidth(thick) lpattern(dash)) legend(off)
graph export Figure1a.png, as(png) replace 
 

 
**** FIGURE 2 (Treatment effects for Privacy and Procedural rights)

 
*Generate tretments

g t1=0
replace t1=1 if  terror==1 & edate<d(15jul2005) 
 
g t2=0
replace t2=1 if  terror==1 & edate>=d(15jul2005) & edate<d(7aug2005)

g t3=0
replace t3=1 if  terror==1 & edate>=d(7aug2005) 

*Generate controls 

global controls "y   edu age   rsex squaredage   minority labour london"

*Here we run three specifications, one for each interval of time, for the variable "Privacy rights." We then run the sam,e specifications for procedural rights. This is a common theme throughout the replication.

*(a) Privacy

quietly: reg privacy t1 t2 t3  $controls,  vce(robust) 
est store a1
quietly: reg privacy t1 t2 t3  $controls,  vce(robust) 
est store a2
quietly: reg privacy t1 t2 t3  $controls,  vce(robust) 
est store a3

*This is the code for the figure, we use the same style and type for many more along the paper.

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
  grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(t1) label("Immediate run") pstyle(p4)) (a2,keep(t2) label("Short run") pstyle(p9))   (a3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Privacy rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export Figure2a.png, as(png) replace 

 
*(b) Procedural

quietly:  reg procedural t1 t2 t3  $controls,  vce(robust) 
est store b1
quietly:  reg procedural t1 t2 t3  $controls,  vce(robust) 
est store b2
quietly:  reg procedural t1 t2 t3  $controls,  vce(robust) 
est store b3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (b1, keep(t1) label("Immediate run") pstyle(p4)) (b2,keep(t2) label("Short run") pstyle(p9))   (b3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Procedural rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export Figure2b.png, as(png) replace 



**** FIGURE 3 (Treatment effects for Privacy and Procedural rights weekly)

 
gen week1=0
replace week1=1 if edate>d(7jul2005) & edate<d(15jul2005)
gen week2=0
replace week2=1 if edate>=d(15jul2005) & edate<d(22jul2005)
gen week3=0
replace week3=1 if edate>=d(22jul2005) & edate<d(29jul2005)
gen week4=0
replace week4=1 if edate>=d(29jul2005) & edate<d(05aug2005)
gen week5=0
replace week5=1 if edate>=d(05aug2005) & edate<d(12aug2005)
gen week6=0
replace week6=1 if edate>=d(12aug2005) & edate<d(19aug2005)


quietly: reg privacy week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store one_week
quietly: reg privacy week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store two_weeks
quietly: reg privacy week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store three_weeks
quietly: reg privacy week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store four_weeks
quietly: reg privacy week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store five_weeks
quietly: reg privacy week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store six_weeks  


  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm

coefplot (one_week, keep(week1) label(one) pstyle(p4)) (two_weeks, keep(week2) label(two)  pstyle(p4))  (three_weeks, keep(week3) label(three)  pstyle(p4)) (four_weeks, keep(week4) label(four)  pstyle(p4)) (five_weeks, keep(week5) label(five)  pstyle(p4)) (six_weeks, keep(week6) label(six) pstyle(p2)), vertical     yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Privacy rights, weekly}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export Figure3a.png, as(png) replace 



quietly: reg procedural week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store one_week
quietly: reg procedural week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store two_weeks
quietly: reg procedural week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store three_weeks
quietly: reg procedural week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store four_weeks
quietly: reg procedural week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store five_weeks
quietly: reg procedural week1 week2 week3 week4 week5 week6 $controls  if edate<d(20aug2005), vce(robust)
est store six_weeks  


  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
*grstyle set color black 
 grstyle set graphsize 13cm 13cm

coefplot (one_week, keep(week1) label(one) pstyle(p4)) (two_weeks, keep(week2) label(two)  pstyle(p4))  (three_weeks, keep(week3) label(three)  pstyle(p4)) (four_weeks, keep(week4) label(four)  pstyle(p4)) (five_weeks, keep(week5) label(five)  pstyle(p4)) (six_weeks, keep(week6) label(six) pstyle(p2)), vertical     yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)      yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Procedural rights, weekly}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export Figure3b.png, as(png) replace 
 


**** FIGURE 4: Related issues: Threat, ingroup bias, self-identification and trust

 
*(a) Likelihood and salience of threat


quietly: reg threat t1 t2 t3  $controls, vce(robust)  
est store b1
quietly: reg threat t1 t2 t3  $controls, vce(robust)   
est store b2
quietly: reg threat t1 t2 t3  $controls, vce(robust)   
est store b3

quietly: reg concern t1 t2 t3  $controls, vce(robust)  
est store b1a
quietly: reg concern t1 t2 t3  $controls, vce(robust)  
est store b2a
quietly: reg concern t1 t2 t3  $controls, vce(robust) 
est store b3a

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot (b1, keep(t1) label("Immediate run") pstyle(p4)) (b1a, keep(t1) label("")  msymbol(d)  pstyle(p4))  (b2,  keep(t2) label("Short run")  pstyle(p9)) (b2a, keep(t2) msymbol(d)  label("")   pstyle(p9)) (b3,  keep(t3) label("Medium run") pstyle(p11)) (b3a, keep(t3) msymbol(d)  label("") pstyle(p11)), vertical  p2(nokey)  p4(nokey) p6(nokey)      yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.4(0.1)0.4)) ytitle(Treatment effects, height(6))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.4(0.1)0.4,  labsize(medium))   plotregion(margin(l=12 r=12))    coeflabels(, notick) baselevels note("Source: BSAS. ■ Likelihood of threat   {&diams} Salience of threat.", span) 
graph export Figure4a.png, as(png) replace 


*(b) Aggressiveness and in-group bias
 
 
quietly: reg human t1 t2 t3  $controls, vce(robust)  
est store b1
quietly: reg human t1 t2 t3  $controls, vce(robust)   
est store b2
quietly: reg human t1 t2 t3  $controls, vce(robust)  
est store b3

quietly: reg ingroup t1 t2 t3 $controls, vce(robust) 
est store b1a
quietly: reg ingroup t1 t2 t3 $controls, vce(robust)   
est store b2a
quietly: reg ingroup t1 t2 t3 $controls, vce(robust)   
est store b3a

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot (b1, keep(t1) label("Immediate run") pstyle(p4)) (b1a, keep(t1) label("")  msymbol(d)  pstyle(p4))  (b2, keep(t2)  label("Short run")  pstyle(p9)) (b2a,  keep(t2) msymbol(d)  label("")   pstyle(p9)) (b3, keep(t3)  label("Medium run") pstyle(p11)) (b3a, keep(t3) msymbol(d)  label("") pstyle(p11)),  vertical  p2(nokey)  p4(nokey) p6(nokey)      yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.4(0.1)0.4)) ytitle(Treatment effects, height(6))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.4(0.1)0.4,  labsize(medium))  plotregion(margin(l=12 r=12))   coeflabels(, notick) baselevels note("Source: BSAS. ■ Aggressiveness in foreign policy {&diams} Ingroup bias.", span) 
graph export Figure4b.png, as(png) replace 



*(c) Self-identification



quietly: reg english t1 t2 t3 $controls if region!=1 & region!=4, vce(robust)
est store b1a
quietly: reg english t1 t2 t3 $controls if region!=1 & region!=4, vce(robust)
est store b2a
quietly: reg english t1 t2 t3 $controls if region!=1 & region!=4, vce(robust)
est store b3a

quietly: reg british t1 t2 t3 $controls, vce(robust)  
est store b1
quietly: reg british t1 t2 t3 $controls, vce(robust)  
est store b2
quietly: reg british t1 t2 t3 $controls, vce(robust) 
est store b3


  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
  grstyle set graphsize 13cm 13cm
coefplot (b1, keep(t1) label("Immediate run") pstyle(p4)) (b1a, keep(t1) label("")  msymbol(d)  pstyle(p4))  (b2, keep(t2)  label("Short run")  pstyle(p9)) (b2a, keep(t2) msymbol(d)  label("")   pstyle(p9)) (b3,  keep(t3) label("Medium run") pstyle(p11)) (b3a, keep(t3) msymbol(d)  label("") pstyle(p11)),  vertical   p2(nokey)  p4(nokey) p6(nokey)      yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.4(0.1)0.4)) ytitle(Treatment effects, height(6))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.4(0.1)0.4,  labsize(medium))  plotregion(margin(l=12 r=12))   coeflabels(, notick) baselevels note("Source: BSAS. ■ Feel British {&diams} Feel English.", span) 
graph export Figure4c.png, as(png) replace 

 
 
*(d) Generalized and political trust
 

 
quietly: reg generalized t1 t2 t3  $controls, vce(robust) 
est store b1
quietly: reg generalized t1 t2 t3  $controls, vce(robust)  
est store b2
quietly: reg generalized t1 t2 t3  $controls, vce(robust)
est store b3

quietly: reg political t1 t2 t3  $controls, vce(robust)   
est store b1a
quietly: reg political t1 t2 t3  $controls, vce(robust)   
est store b2a
quietly: reg political t1 t2 t3  $controls, vce(robust)   
est store b3a

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot (b1, keep(t1) label("Immediate run") pstyle(p4)) (b1a,  keep(t1) label("")  msymbol(d)  pstyle(p4))  (b2, keep(t2)  label("Short run")  pstyle(p9)) (b2a, keep(t2) msymbol(d)  label("")   pstyle(p9)) (b3, keep(t3)  label("Medium run") pstyle(p11)) (b3a, keep(t3) msymbol(d)  label("") pstyle(p11)),  vertical   p2(nokey)  p4(nokey) p6(nokey)      yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.4(0.1)0.4)) ytitle(Treatment effects, height(6))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.4(0.1)0.4,  labsize(medium))   plotregion(margin(l=12 r=12))   coeflabels(, notick) baselevels note("Source: BSAS. ■ Generalized trust {&diams} Political trust.", span) 
graph export Figure4d.png, as(png) replace 


 
 
 
**** FIGURE 5: Heterogeneity


**Labour and non-Labour voters

*(a)  

quietly: reg privacy t1 t2 t3  $controls  if  labour==0, vce(robust)
est store b1
quietly: reg privacy t1 t2 t3  $controls  if  labour==0, vce(robust)
est store b2
quietly: reg privacy t1 t2 t3  $controls  if  labour==0, vce(robust)
est store b3

quietly: reg privacy t1 t2 t3  $controls  if  labour==1, vce(robust)
est store b1a
quietly: reg privacy t1 t2 t3  $controls  if  labour==1, vce(robust)
est store b2a
quietly: reg privacy t1 t2 t3  $controls  if  labour==1, vce(robust)
est store b3a

coefplot (b1,  keep(t1) label("Immediate run") pstyle(p4)) (b1a, keep(t1) label("") msymbol(d)   pstyle(p4))  (b2,  keep(t2) label("Short run")  pstyle(p9)) (b2a, keep(t2) msymbol(d) label("")   pstyle(p9)) (b3,  keep(t3) label("Medium run") pstyle(p11)) (b3a, keep(t3) msymbol(d)  label("") pstyle(p11)), vertical   p2(nokey)  p4(nokey) p6(nokey)      yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)    yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium))  plotregion(margin(l=12 r=12))   coeflabels(, notick) baselevels note("Source: BSAS. ■ All but Labour voter;  {&diams} Labour voter", span) 
graph export Figure5a.png, as(png) replace 



*(b)  


quietly: reg procedural t1 t2 t3  $controls  if  labour==0, vce(robust)
est store b1
quietly: reg procedural t1 t2 t3  $controls  if  labour==0, vce(robust)
est store b2
quietly: reg procedural t1 t2 t3  $controls  if  labour==0, vce(robust)
est store b3

quietly: reg procedural t1 t2 t3  $controls  if  labour==1, vce(robust)
est store b1a
quietly: reg procedural t1 t2 t3  $controls  if  labour==1, vce(robust)
est store b2a
quietly: reg procedural t1 t2 t3  $controls  if  labour==1, vce(robust)
est store b3a


coefplot (b1, keep(t1) label("Immediate run") pstyle(p4)) (b1a, keep(t1) label("")  msymbol(d)  pstyle(p4))  (b2,  keep(t2) label("Short run")  pstyle(p9)) (b2a, keep(t2) msymbol(d)  label("")   pstyle(p9)) (b3,  keep(t3) label("Medium run") pstyle(p11)) (b3a, keep(t3) msymbol(d)  label("") pstyle(p11)), vertical  p2(nokey)  p4(nokey) p6(nokey)      yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)   yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium))  plotregion(margin(l=12 r=12))    coeflabels(, notick) baselevels note("Source: BSAS.  ■ All but Labour voter  {&diams} Labour voter.", span) 
graph export Figure5b.png, as(png) replace 



** Educated and non-education
	  
*(c) 

quietly: reg privacy t1 t2 t3  $controls if  edu<5, vce(robust)
est store b1
quietly: reg privacy t1 t2 t3  $controls if  edu<5, vce(robust)
est store b2
quietly: reg privacy t1 t2 t3  $controls if  edu<5, vce(robust)
est store b3

quietly: reg privacy t1 t2 t3  $controls if  edu>4, vce(robust)
est store b1a
quietly: reg privacy t1 t2 t3  $controls if  edu>4, vce(robust)
est store b2a
quietly: reg privacy t1 t2 t3  $controls if  edu>4, vce(robust)
est store b3a

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot (b1, keep(t1) label("Immediate run") pstyle(p4)) (b1a, keep(t1) label("") msymbol(d)   pstyle(p4))  (b2, keep(t2) label("Short run")  pstyle(p9)) (b2a, keep(t2) msymbol(d)  label("")   pstyle(p9)) (b3,  keep(t3) label("Medium run") pstyle(p11)) (b3a, keep(t3) msymbol(d)  label("") pstyle(p11)), vertical  p2(nokey)  p4(nokey) p6(nokey)      yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)  yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium))  plotregion(margin(l=12 r=12))   coeflabels(, notick) baselevels note("Source: BSAS. ■ Secondary school  {&diams} University.", span) 
graph export Figure5c.png, as(png) replace 
  
*(d) 

quietly: reg procedural t1 t2 t3  $controls if  edu<5, vce(robust)
est store b1
quietly: reg procedural t1 t2 t3  $controls if  edu<5, vce(robust)
est store b2
quietly: reg procedural t1 t2 t3  $controls if   edu<5, vce(robust)
est store b3

quietly: reg procedural t1 t2 t3  $controls if  edu>4, vce(robust)
est store b1a
quietly: reg procedural t1 t2 t3  $controls if   edu>4, vce(robust)
est store b2a
quietly: reg procedural t1 t2 t3  $controls if   edu>4, vce(robust)
est store b3a


coefplot (b1,  keep(t1) label("Immediate run") pstyle(p4)) (b1a, keep(t1) label("") msymbol(d)   pstyle(p4))  (b2, keep(t2)   label("Short run")  pstyle(p9)) (b2a, keep(t2) msymbol(d)  label("")   pstyle(p9)) (b3, keep(t3)  label("Medium run") pstyle(p11)) (b3a, keep(t3) msymbol(d)  label("") pstyle(p11)), vertical     p2(nokey)  p4(nokey) p6(nokey)      yline(0,  lpattern(dash) ) msymbol(s)  levels(95) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium))  plotregion(margin(l=12 r=12))    coeflabels(, notick) baselevels note("Source: BSAS. ■ Secondary school {&diams} University.", span) 
graph export Figure5d.png, as(png) replace 





******* ONLINE APPENDIX


***** A: Descriptive statistics

*DV

format privacy procedural banprotest banspeech ID email detention nojury tag  torture  threat concern human ingroup english british generalized political y edu age  rsex  minority labour london %9,2fc


sort terror
by terror: eststo: quietly estpost summarize privacy procedural banprotest banspeech ID email detention nojury tag  torture  threat concern human ingroup english british generalized political y edu age  rsex  minority labour london
esttab using descriptive.tex,  cells("mean(label(Mean) fmt(2)) sd(label(SD) fmt(2)) count(label(N) fmt(0))") label nodepvar replace

 
**** Figure D.1: Item information function 

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 16cm

irt gpcm banprotest banspeech ID email , listwise
irtgraph iif,  legend(position(6) rows(2) label( 1 "Ban protest") label (2 "Ban speech") label(3 "Compulsory ID") label (4 "Control email" ))
graph export IRTprivacy.png, as(png) replace 

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 16cm

irt  gpcm  detention nojury tag torture  , listwise
irtgraph iif,   legend(position(6) rows(2) label( 1 "Arbitrary detention") label( 2 "Deny trial") label( 3 "Tag suspects") label(4 "Torture suspects" ))
graph export IRTprocedural.png, as(png) replace 

 
**** E Treatment effect per survey items

*Labels for tables E.1 to E.4

la var t1 "Immediate run"
la var t2 "Short run"
la var t3 "Medium run"
la var privacy "Privacy"
la var procedural "Procedural"
 
*Table E.1: Public responses to terror attack: Privacy rights items
 
 
quietly: reg  privacy t1 t2 t3 $controls,  vce(robust)
est sto priv 
estadd local RegionFE "Yes"
quietly: reg  banprotest t1 t2 t3 $controls,  vce(robust)
est sto allbanprotest 
estadd local RegionFE "Yes"
 quietly: reg  banspeech t1 t2 t3 $controls,  vce(robust)
est sto allbanspeech
estadd local RegionFE "Yes"
quietly: reg  ID t1 t2 t3 $controls,  vce(robust)
est sto allID 
estadd local RegionFE "Yes"
 quietly: reg  email t1 t2 t3 $controls,  vce(robust)
est sto allemail
estadd local RegionFE "Yes"

esttab  priv  allbanprotest allbanspeech allID allemail using "tableA1R3.tex", replace   se obslast collabels(, none)  star(* 0.10 ** 0.05 *** 0.01)  wrap    booktabs  nonumbers cells(b(star fmt(3)) se(fmt(3) par)) compress label title(Public responses to terror attack: Privacy rights items)  keep(t1 t2 t3)  gaps  stats(  RegionFE  N r2, fmt(a1  %9.0fc  2)  labels( `"Region FE"'  `"N.obs"' `"R-squared"') )  legend  
 

*Table E.2: Public responses to terror attack: Procedural rights items

 quietly: reg  procedural t1 t2 t3 $controls,  vce(robust)
est sto proc
estadd local RegionFE "Yes"
 quietly: reg  detention t1 t2 t3 $controls,  vce(robust)
est sto allemail
estadd local RegionFE "Yes"
 quietly: reg  nojury t1 t2 t3 $controls,  vce(robust)
est sto allbanspeech
estadd local RegionFE "Yes"
quietly: reg  tag t1 t2 t3 $controls,  vce(robust) 
est sto allID 
estadd local RegionFE "Yes"
 quietly: reg  torture t1 t2 t3 $controls,  vce(robust)
est sto allbanprotest 
estadd local RegionFE "Yes"


esttab proc allemail   allbanspeech allID allbanprotest  using "tableA2R3.tex", replace   se obslast collabels(, none)  star(* 0.10 ** 0.05 *** 0.01)  wrap    booktabs  nonumbers cells(b(star fmt(3)) se(fmt(3) par)) compress label title(Public responses to terror attack: Procedural rights items)  keep(t1 t2 t3)  gaps  stats(  RegionFE  N r2, fmt(a1  %9.0fc  2)  labels( `"Region FE"'  `"N.obs"' `"R-squared"') )  legend  


*Table E.3: Public responses to terror attack: Further items

quietly: reg  english     t1 t2 t3  $controls if region!=1 & region!=4,  vce(robust) 
est sto s1
estadd local RegionFE "Yes"
quietly: reg  british     t1 t2 t3  $controls ,  vce(robust) 
est sto s2
estadd local RegionFE "Yes"
quietly: reg  generalized t1 t2 t3  $controls ,  vce(robust)
est sto s3
estadd local RegionFE "Yes"
quietly: reg political    t1 t2 t3  $controls ,  vce(robust)
est sto s4
estadd local RegionFE "Yes"

esttab  s1 s2 s3 s4 using "tableA3R3.tex", replace   se obslast collabels(, none)  star(* 0.10 ** 0.05 *** 0.01)  wrap    booktabs  nonumbers cells(b(star fmt(3)) se(fmt(3) par)) compress label title(Public responses to terror attack: Further items)  keep(t1 t2 t3)  gaps  stats(  RegionFE  N r2, fmt(a1  %9.0fc  2)  labels( `"Region FE"'  `"N.obs"' `"R-squared"') )  legend 


*Table E.4: Public responses to terror attack: Further items

quietly: reg threat t1 t2 t3 $controls ,  vce(robust) 
est sto s1
estadd local RegionFE "Yes"
quietly: reg concern t1 t2 t3 $controls ,  vce(robust)  
est sto s2
estadd local RegionFE "Yes"
quietly: reg human   t1 t2 t3 $controls ,  vce(robust)
est sto s3
estadd local RegionFE "Yes"
quietly: reg ingroup t1 t2 t3 $controls ,  vce(robust)
est sto s4
estadd local RegionFE "Yes"
	
esttab  s1 s2 s3 s4 using "tableA4R3.tex", replace   se obslast collabels(, none)  star(* 0.10 ** 0.05 *** 0.01)  wrap    booktabs  nonumbers cells(b(star fmt(3)) se(fmt(3) par)) compress label title(Public responses to terror attack: Further items)  keep(t1 t2 t3)  gaps  stats(  RegionFE  N r2, fmt(a1  %9.0fc  2)  labels( `"Region FE"'  `"N.obs"' `"R-squared"') )  legend 


 
**** F Robustness checks


*Figure F.1: Entropy balancing


*Privacy

quietly: ebalance terror y edu age squaredage rsex  minority labour london   
quietly: reg privacy t1 t2 t3  $controls [pweight= _webal],  vce(robust)
est store a1
quietly: reg privacy t1 t2 t3  $controls [pweight= _webal],  vce(robust)
est store a2
quietly: reg privacy t1 t2 t3  $controls [pweight= _webal],  vce(robust)
est store a3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(t1) label("Immediate run") pstyle(p4)) (a2,keep(t2) label("Short run") pstyle(p9))   (a3, keep(t3) label("Medium run") pstyle(p11)) , vertical   yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Privacy rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export PrivacyR3ebal.png, as(png) replace 


*Procedural

quietly: ebalance terror y edu age squaredage rsex minority labour region  
quietly: reg procedural t1 t2 t3   $controls [pweight= _webal],  vce(robust)
est store b1
quietly: reg procedural t1 t2 t3   $controls [pweight= _webal],  vce(robust)
est store b2
quietly: reg procedural t1 t2 t3   $controls [pweight= _webal],  vce(robust)
est store b3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (b1, keep(t1) label("Immediate run") pstyle(p4)) (b2,keep(t2) label("Short run") pstyle(p9))   (b3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Procedural rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export ProceduralR3ebal.png, as(png) replace 


*Figure F.2: Coarsened exact matching
 

imb y edu age rsex  minority labour, tr(terror)
cem y  edu  age(15 24 34 44 54 64) , tr(terror)

*Privacy

quietly:  reg privacy t1 t2 t3  $controls  if cem_matched==1,  vce(robust)
est store a1
quietly:  reg privacy t1 t2 t3  $controls  if cem_matched==1,  vce(robust)
est store a2
quietly:  reg privacy t1 t2 t3  $controls  if cem_matched==1,  vce(robust)
est store a3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(t1) label("Immediate run") pstyle(p4)) (a2,keep(t2) label("Short run") pstyle(p9))   (a3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Privacy rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export PrivacyR3cem.png, as(png) replace 

*Procedural

quietly: reg procedural t1 t2 t3  $controls  if cem_matched==1,  vce(robust)
est store b1
quietly: reg procedural t1 t2 t3  $controls  if cem_matched==1,  vce(robust)
est store b2
quietly: reg procedural t1 t2 t3  $controls  if cem_matched==1,  vce(robust)
est store b3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (b1, keep(t1) label("Immediate run") pstyle(p4)) (b2,keep(t2) label("Short run") pstyle(p9))   (b3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Procedural rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export ProceduralR3cem.png, as(png) replace 


*Figure F.3: Time trends


*Privacy

quietly: reg privacy t1 t2 t3  edate  $controls,  vce(robust)   
est store a1
quietly: reg privacy t1 t2 t3  edate  $controls,  vce(robust)   
est store a2
quietly: reg privacy t1 t2 t3  edate  $controls,  vce(robust)
est store a3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(t1) label("Immediate run") pstyle(p4)) (a2,keep(t2) label("Short run") pstyle(p9))   (a3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Privacy rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export PrivacyR3trend.png, as(png) replace 


*Procedural

quietly: reg procedural t1 t2 t3  edate  $controls ,  vce(robust)  
est store b1
quietly: reg procedural t1 t2 t3  edate  $controls ,  vce(robust) 
est store b2
quietly: reg procedural t1 t2 t3  edate  $controls ,  vce(robust)  
est store b3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (b1, keep(t1) label("Immediate run") pstyle(p4)) (b2,keep(t2) label("Short run") pstyle(p9))   (b3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Procedural rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export ProceduralR3trend.png, as(png) replace 


*Figure F.4: Media controls





*Privacy

quietly:  reg privacy t1 t2 t3  $controls  totalsecurity,  vce(robust)
est store a1
quietly:  reg privacy t1 t2 t3  $controls  totalsecurity,  vce(robust)
est store a2
quietly:  reg privacy t1 t2 t3  $controls  totalsecurity,  vce(robust)
est store a3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(t1) label("Immediate run") pstyle(p4)) (a2,keep(t2) label("Short run") pstyle(p9))   (a3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Privacy rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export PrivacyR3media.png, as(png) replace 

*Procedural

quietly: reg procedural t1 t2 t3  $controls totalsecurity,  vce(robust)
est store b1
quietly: reg procedural t1 t2 t3  $controls  totalsecurity,  vce(robust)
est store b2
quietly: reg procedural t1 t2 t3  $controls  totalsecurity,  vce(robust)
est store b3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (b1, keep(t1) label("Immediate run") pstyle(p4)) (b2,keep(t2) label("Short run") pstyle(p9))   (b3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Procedural rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export ProceduralR3media.png, as(png) replace 

  
*Figure F.5: Placebo dates

g terrorff=0
replace terrorff=1 if edate>d(23jun2005)


g t1f=0
replace t1f=1 if  terrorff==1 & edate<d(1jul2005) 
 
g t2f=0
replace t2f=1 if  terrorff==1 & edate>=d(1jul2005) & edate<d(22jul2005)

g t3f=0
replace t3f=1 if  terrorff==1  & edate>=d(22jul2005) & edate<d(09nov2005)

*Privacy

quietly:  reg privacy t1f t2f t3f  $controls  ,  vce(robust)
est store a1
quietly:  reg privacy t1f t2f t3f  $controls  ,  vce(robust)
est store a2
quietly:  reg privacy t1f t2f t3f  $controls  ,  vce(robust)
est store a3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(t1f) label("Immediate run") pstyle(p4)) (a2,keep(t2f) label("Short run") pstyle(p9))   (a3, keep(t3f) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Placebo treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Privacy rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export PrivacyR3date.png, as(png) replace 

*Procedural

quietly: reg procedural t1f t2f t3f  $controls  ,  vce(robust)
est store b1
quietly: reg procedural t1f t2f t3f  $controls  ,  vce(robust)
est store b2
quietly: reg procedural t1f t2f t3f  $controls  ,  vce(robust)
est store b3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (b1, keep(t1f) label("Immediate run") pstyle(p4)) (b2,keep(t2f) label("Short run") pstyle(p9))   (b3, keep(t3f) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Placebo treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Procedural rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
graph export ProceduralR3date.png, as(png) replace 

 
*Figure F.6: Placebo issues
 
 
quietly: reg taxspend t1 t2 t3 $controls ,  vce(robust)   
est store a1
quietly: reg taxspend t1 t2 t3 $controls ,  vce(robust)  
est store a2
quietly: reg taxspend t1 t2 t3 $controls ,  vce(robust)   
est store a3


  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(t1) label("Immediate run") pstyle(p4)) (a2, keep(t2) label("Short run") pstyle(p9))   (a3, keep(t3) label("Medium run") pstyle(p11)) , vertical  yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-.2(0.1).2)) ytitle(Treatment effects, height(-20))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-.2(0.1).2,  labsize(medium)) coeflabels(, notick) baselevels note("Source: BSAS", span) title("Placebo 1: {bf:Spending}")
graph export Placebo1R3.png, as(png) replace


quietly: reg welffeet t1 t2 t3 $controls ,  vce(robust) 
est store a1
quietly: reg welffeet t1 t2 t3 $controls ,  vce(robust)
est store a2
quietly: reg welffeet t1 t2 t3 $controls ,  vce(robust) 
est store a3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(t1) label("Immediate run") pstyle(p4)) (a2, keep(t2) label("Short run") pstyle(p9))   (a3, keep(t3) label("Medium run") pstyle(p11)) , vertical         yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-.2(0.1).2)) ytitle(Treatment effects, height(-20))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-.2(0.1).2,  labsize(medium)) coeflabels(, notick) baselevels note("Source: BSAS", span) title("Placebo 2: {bf:Redistribution}")
graph export Placebo2R3.png, as(png) replace 

 
 
 


**** G Further relevant events 

*Figure G.1: Failed attacks, 21 July 2005
 
 drop if edate<d(13jul2005)
 
 gen terrorF=0
 replace terrorF=1 if edate>d(21jul2005)
 gen very_short=0
 replace very_short=1 if edate>d(21jul2005) & edate<d(29jul2005)
 gen short=0
 replace short=1 if edate>d(21jul2005) & edate<d(21aug2005)
 gen medium=0
 replace medium=1 if edate>=d(21aug2005)
 

 
quietly: reg privacy  very_short short medium  $controls ,  vce(robust)
est store a1
quietly: reg privacy  very_short short medium  $controls ,  vce(robust)
est store a2
quietly: reg privacy  very_short short medium  $controls ,  vce(robust)
est store a3

quietly: reg procedural  very_short short medium  $controls ,  vce(robust)
est store b1
quietly: reg procedural  very_short short medium  $controls ,  vce(robust)
est store b2
quietly: reg procedural  very_short short medium  $controls ,  vce(robust)
est store b3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(very_short) label("Immediate run") pstyle(p4)) (a2, keep(short) label("Short run") pstyle(p9))   (a3, keep(medium) label("Medium run") pstyle(p11 )) , vertical      yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)    yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Privacy rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
	graph export PrivacyFR3.png, as(png) replace 

	  grstyle init
	 grstyle set legend 2,  nobox
	 grstyle set size 8pt: tick_label key_label
	 grstyle set size 12pt: heading
	 grstyle set size 10pt: subheading axis_title 
	 grstyle set graphsize 13cm 13cm
	coefplot  (b1, keep(very_short) label("Immediate run") pstyle(p4)) (b2, keep(short)  label("Short run") pstyle(p9))   (b3, keep(medium)  label("Medium run") pstyle(p11)) , vertical   yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Treatment effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Procedural rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
	graph export ProceduralFR3.png, as(png) replace 
	
	
	

*Figure G.2: Tony Blair Speech, 5 August 2005


drop very_short short medium  
 
 
 gen very_short=0
 replace very_short=1 if edate>d(5aug2005) & edate<d(13aug2005)
 gen short=0
 replace short=1 if edate>d(5aug2005) & edate<d(5sep2005)
 gen medium=0
 replace medium=1 if edate>=d(5sep2005)
 

 drop if terror==0  
 
quietly: reg privacy very_short short medium  $controls ,  vce(robust)  
est store a1
quietly: reg privacy very_short short medium  $controls ,  vce(robust)
est store a2
quietly: reg privacy very_short short medium  $controls ,  vce(robust)
est store a3

quietly: reg procedural very_short short medium  $controls ,  vce(robust)
est store b1
quietly: reg procedural very_short short medium  $controls ,  vce(robust)
est store b2
quietly: reg procedural very_short short medium  $controls ,  vce(robust)
est store b3

  grstyle init
 grstyle set legend 2,  nobox
 grstyle set size 8pt: tick_label key_label
 grstyle set size 12pt: heading
 grstyle set size 10pt: subheading axis_title
 grstyle set graphsize 13cm 13cm
coefplot  (a1, keep(very_short) label("Immediate run") pstyle(p4)) (a2,  keep(short) label("Short run") pstyle(p9))   (a3,  keep(medium) label("Medium run") pstyle(p11 )) , vertical     yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)     yscale(range(-0.2(0.1)0.2)) ytitle(Speech effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium)) title("{bf:Privacy rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
	graph export Privacy_blairR3.png, as(png) replace 

	  grstyle init
	 grstyle set legend 2,  nobox
	 grstyle set size 8pt: tick_label key_label
	 grstyle set size 12pt: heading
	 grstyle set size 10pt: subheading axis_title
	 grstyle set graphsize 13cm 13cm
	coefplot  (b1,  keep(very_short) label("Immediate run") pstyle(p4)) (b2,  keep(short) label("Short run") pstyle(p9))   (b3, keep(medium) label("Medium run") pstyle(p11)) , vertical     yline(0,  lpattern(dash) ) msymbol(s)  levels(95 ) ciopts(recast(. rcap))   xlabel(, nolabels)  yscale(range(-0.2(0.1)0.2))  ytitle(Speech effects, height(5))  legend(position(12) rows(1))  xtick(,notick ) ylabel(-0.2(0.1)0.2,  labsize(medium))  title("{bf:Procedural rights}") coeflabels(, notick) baselevels note("Source: BSAS", span) 
	graph export Procedural_blairR3.png, as(png) replace 
	
	

*Create codebook

*codebook terror y edu rsex age  labour  minority london terrorlk terrconc riskter humrijob tortwar britnon britnons soctrust govtrust banprotest banspeech ID email tag detention torture nojury nateng natbrit edate taxspend redistrb morewelf welffeet region date




 
 
